package com.ruicar.afs.cloud.channel.register.entity;

import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruicar.afs.cloud.common.core.entity.BaseEntity;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.util.Date;

@Data
@TableName("channel_base_info")
public class ChannelBaseInfo extends BaseEntity<ChannelBaseInfo> {

    /**
     * ID
     */
    @JsonFormat(shape = JsonFormat.Shape.STRING)
    private Long id;

    /**
     * 合作商代码
     */
    private String channelCode;

    /**
     * 统一社会信用代码
     */
    private String socUniCrtCode;

    /**
     * 合作商全称
     */
    private String channelFullName;

    /**
     * 渠道类型 1:合作商;2:直营车商
     */
    private Integer channelType;

    /**
     * 上线日期 yyyymmdd
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date onlineDate;

    /**
     * 管理员姓名
     */
    private String channelAdmin;

    /**
     * 管理员电话
     */
    private String channelAdminTel;

    /**
     * channel_admin_mail -- 管理员邮箱
     */
    private String channelAdminMail;

    /**
     * channel_admin_province -- 渠道管理员地址-省份
     */
    private String channelAdminProvince;

    /**
     * channel_admin_city -- 渠道管理员地址-城市
     */
    private String channelAdminCity;

    /**
     * channel_admin_address -- 渠道管理员地址-详情
     */
    private String channelAdminAddress;

    /**
     * legal_person -- 法人
     */
    private String legalPerson;

    /**
     * legal_person_idcard -- 法人身份证号
     */
    private String legalPersonIdcard;

    /**
     * legal_person_tel -- 法人电话
     */
    private String legalPersonTel;

    /**
     * actual_controller -- 实际控制人
     */
    private String actualController;

    /**
     * actual_controller_idcard -- 实际控制人身份证号
     */
    private String actualControllerIdcard;

    /**
     * actual_controller_tel -- 实际控制人电话
     */
    private String actualControllerTel;

    /**
     * companies_number -- 公司人数
     */
    private Integer companiesNumber;

    /**
     * channel_province -- 注册省份
     */
    private String channelProvince;

    /**
     * channel_city -- 注册城市
     */
    private String channelCity;

    /**
     * channel_address -- 注册地址
     */
    private String channelAddress;

    /**
     * longitude_latitude -- 地址经纬度
     */
    private String longitudeLatitude;

    /**
     * office_address -- 办公地址
     */
    private String officeAddress;

    /**
     * longitude_latitude_range -- 经纬度范围
     */
    private String longitudeLatitudeRange;

    /**
     * main_brand -- 主营品牌
     */
    private String mainBrand;

    /**
     * account_info -- 账户信息 直营车商需存储
     */
    private String accountInfo;

    /**
     * cardeal_type -- 车商类型 直营车商需存储
     */
    private String cardealType;

    /**
     * business_area -- 经营场所面积
     */
    private String businessArea;

    /**
     * payment_object -- 汇款对象
     */
    private String paymentObject;

    /**
     * channel_belong -- 渠道归属
     */
    private String channelBelong;

    /**
     * business_type -- 业务类型 1:新车/2:二手车
     */
    private Integer businessType;

    /**
     * subscribed_capital -- 实收资本
     */
    private BigDecimal subscribedCapital;

    /**
     * registered_capital -- 注册资金
     */
    private BigDecimal registeredCapital;

    /**
     * net_asset_value -- 资产净值
     */
    private BigDecimal netAssetValue;

    /**
     * gps_vendor_author -- GPS厂商授权
     */
    private String gpsVendorAuthor;

    /**
     * gps_instal_mode -- GPS安装方式
     */
    private String gpsInstalMode;

    /**
     * business_life -- 经营年限
     */
    private Integer businessLife;

    /**
     * registration_date -- 注册日期
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date registrationDate;

    /**
     * operating_profit -- 上一年度经营利润
     */
    private BigDecimal operatingProfit;

    /**
     * achievement -- 业绩
     */
    private BigDecimal achievement;

    /**
     * pro_growth_rate -- 利润率增长率
     */
    private BigDecimal proGrowthRate;

    /**
     * sale_increase_rate -- 销售收入增长率
     */
    private BigDecimal saleIncreaseRate;

    /**
     * current_ratio -- 流动比率
     */
    private BigDecimal currentRatio;

    /**
     * asset_liability_ratio -- 资产负债率
     */
    private BigDecimal assetLiabilityRatio;

    /**
     * asset_net_value -- 资产净值
     */
    private BigDecimal assetNetValue;

    /**
     * car_type -- 业务类型 1:新车;2:二手车
     */
    private Integer carType;

    /**
     * taxpayer_type -- 纳税人类型1：一般纳税人：2:小规模纳税人
     */
    private Integer taxpayerType;

    /**
     * taxpayer_id_number -- 纳税人识别号
     */
    private String taxpayerIdNumber;

    /**
     * invoice_tel_number -- 联系电话
     */
    private String invoiceTelNumber;

    /**
     * invoice_address -- 发票地址
     */
    private String invoiceAddress;

    /**
     * opening_bank -- 开户行
     */
    private String openingBank;

    /**
     * bank_account -- 开户行账户
     */
    private String bankAccount;

    /**
     * longitude_latitude_switch -- 经纬度是否控制 1:是/0:否
     */
    private String longitudeLatitudeSwitch;

    /**
     * person_rel_cardealer_switch -- 业务人员关联车商 1:是/0:否
     */
    private String personRelCardealerSwitch;

    /**
     * choice_cardealer_switch -- 进件选择车商 1:是/0:否
     */
    private String choiceCardealerSwitch;

    /**
     * channel_status -- 合作商状态
     */
    private String channelStatus;

    /**
     * create_by -- 创建人
     */
    private String createBy;

    /**
     * create_time -- 创建时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;

    /**
     * update_by -- 更新人
     */
    private String updateBy;

    /**
     * update_time -- 更新时间
     */
    @DateTimeFormat(pattern = "yyyy-MM-dd")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updateTime;

    /**
     * del_flag -- 删除标记
     */
    private String delFlag;

}
